记录了使用virtualBox 过程中碰到的一些问题,方便日后查询。
配置 NAT network
- 虚拟机之间互通
- 主机与 VM 之间默认不能通讯
配置的位置在:
virtual菜单==》偏好设置==》网络==》NAT网络
,新建一个NAT网络并在创建虚拟机的时候指定。使用 DHCP 方式即可自动获取 IP。
NAT 网络模式下,HOST ssh to VM
- 在
virtual菜单==》偏好设置==》网络==》NAT网络
中,选择编辑 NAT 网络==》端口转发
,增加一条转发规则为(假设 VM ip 为 10.0.2.5):Rule名称,TCP,127.0.0.1,22222,10.0.2.5,22
。这样就是配置了主机22222
端口将收到的 TCP 请求都转发到10.0.2.5
的22
端口上。 - 确认 VM 的 sshd 开启,并且配置了 iptables,如:
- service sshd start
- service iptables stop
之后在主机上通过 ssh -p 22222 root@127.0.0.1
,即可完成到 VM 的连接。
VM 网卡混杂模式是什么意思
就是网卡只接受自己该收的,还是啥消息都接受。区分标识是mac地址。
详情可以参见:知乎
设置共享文件夹
我是尝试在 mac pro 上与 centos7 的 vm 共享文件夹,经历比较坎坷,记录如下:
首先在 virtualbox 中,vm 共享文件夹是需要安装:VBoxGuestAdditions 的,一个小助手。会在 vm 中启动某个服务。安装的 iso 是virtualbox 自带的,在 对应 VM 的 menu devices == 》 Insert Guest Addtions CD image… 中。点击后尝试在 centos 里通过 mount /dev/cdrom /mnt
来挂载 iso。里面的内容是这样的:
dr-xr-xr-x. 2 root root 2048 4月 28 23:35 32Bit
dr-xr-xr-x. 2 root root 2048 4月 28 23:35 64Bit
-r-xr-xr-x. 1 root root 647 8月 17 2016 AUTORUN.INF
-r-xr-xr-x. 1 root root 6381 4月 29 00:27 autorun.sh
dr-xr-xr-x. 2 root root 2048 4月 28 23:35 cert
dr-xr-xr-x. 2 root root 4096 4月 28 23:35 OS2
-r-xr-xr-x. 1 root root 4824 4月 29 00:27 runasroot.sh
-r-xr-xr-x. 1 root root 8140237 4月 29 00:27 VBoxLinuxAdditions.run
-r-xr-xr-x. 1 root root 17782784 4月 29 01:28 VBoxSolarisAdditions.pkg
-r-xr-xr-x. 1 root root 16400296 4月 29 00:35 VBoxWindowsAdditions-amd64.exe
-r-xr-xr-x. 1 root root 268496 4月 29 00:27 VBoxWindowsAdditions.exe
-r-xr-xr-x. 1 root root 10039072 4月 29 00:29 VBoxWindowsAdditions-x86.exe
理论上运行autorun.sh
就可以了,但是这么坎坷的路程怎么会这么简单!
我执行的时候出错了,提示 manual 的方式运行脚本,遂选择VBoxLinuxAdditions.run
运行。但是运行的时候报错,错误日志没有记录,可以参考
- unable-to-install-virtualbox-specify-kern-dir-directory-installing-vir
- CentOS 6.6 Minimal设置VirtualBox的共享文件夹
其中关键点是:
- 要安装
kernel-devel
,gcc
保证
kernel
版本的一致性(我是通过yum update)方式更新到最新的,具体如下:kernel-3.10.0-514.26.2.el7.x86_64
kernel-3.10.0-514.el7.x86_64
kernel-devel-3.10.0-514.26.2.el7.x86_64
kernel-headers-3.10.0-514.26.2.el7.x86_64
kernel-tools-3.10.0-514.26.2.el7.x86_64
kernel-tools-libs-3.10.0-514.26.2.el7.x86_64
其中 kernel 有两个版本,在启动的时候应当选择那个与 devel 一致的版本才行。
配置 host to vm
- VirtualBox 从主机访问虚拟机中系统host only network设置
可以在 virtualbox 的网络配置中,编辑对应的 host-only 网络,就能看到宿主机被分配的 ip 地址了
- 一定要注意不要选错配置:(